package org.jeecg.modules.param.member.entity;

import java.io.Serializable;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import org.jeecgframework.poi.excel.annotation.Excel;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @Description: 会员用户管理
 * @Author: 月月鸟
 * @Date:   2021-05-25
 * @Version: V1.0
 */
@Data
@TableName("bike_member_user")
@ApiModel(value="bike_member_user对象", description="会员用户管理")
public class BikeMemberUser implements Serializable {
    private static final long serialVersionUID = 1L;
	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**会员号*/
    @Excel(name = "会员号", width = 15)
    @ApiModelProperty(value = "会员号")
    private java.lang.String code;
	/**会员名称*/
    @Excel(name = "会员名称", width = 15)
    @ApiModelProperty(value = "会员名称")
    private java.lang.String name;
	/**身份证号*/
    @Excel(name = "身份证号", width = 15)
    @ApiModelProperty(value = "身份证号")
    private java.lang.String idCard;
    /**证件有效期开始时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "证件有效期开始时间")
    private java.util.Date startDate;
    /**证件有效期结束时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "证件有效期结束时间")
    private java.util.Date endDate;
	/**性别*/
    @Excel(name = "性别", width = 15, dicCode = "sex")
    @Dict(dicCode = "sex")
    @ApiModelProperty(value = "性别")
    private java.lang.String sex;
	/**年龄*/
    @Excel(name = "年龄", width = 15)
    @ApiModelProperty(value = "年龄")
    private java.lang.Integer age;
	/**手机号*/
    @Excel(name = "手机号", width = 15)
    @ApiModelProperty(value = "手机号")
    private java.lang.String phone;
	/**登陆密码*/
    @Excel(name = "登陆密码", width = 15)
    @ApiModelProperty(value = "登陆密码")
    private java.lang.String password;
	/**是否实名认证*/
    @Excel(name = "是否实名认证", width = 15)
    @ApiModelProperty(value = "是否实名认证")
    private java.lang.String isCertification;
	/**详细地址*/
    @Excel(name = "详细地址", width = 15)
    @ApiModelProperty(value = "详细地址")
    private java.lang.String address;
	/**注册类型*/
    @Excel(name = "注册类型", width = 15, dicCode = "register_type")
    @Dict(dicCode = "register_type")
    @ApiModelProperty(value = "注册类型 1.手机注册 2.ic卡注册")
    private java.lang.String registerType;
    /**密码盐*/
    @Excel(name = "密码盐", width = 15)
    @ApiModelProperty(value = "密码盐")
    private String salt;
	/**注册时间*/
    @Excel(name = "注册时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "注册时间")
    private java.util.Date registerTime;
	/**用户状态(1正常2异常3黑名单4注销)*/
    @Excel(name = "用户状态", width = 15, dicCode = "member_status")
    @Dict(dicCode = "member_status")
    @ApiModelProperty(value = "用户状态(1正常2异常3黑名单4注销)")
    private java.lang.String status;
	/**余额*/
    @Excel(name = "余额", width = 15)
    @ApiModelProperty(value = "余额")
    private java.math.BigDecimal balance;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**修改人*/
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
	/**备注*/
    @Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String memo;
    /**用户头像*/
    @Excel(name = "用户头像")
    @ApiModelProperty(value = "用户头像")
    private String headIcon;
    /**是否免密支付*/
    @Excel(name = "是否免密支付")
    @ApiModelProperty(value = "是否免密支付")
    private String isSecretFree;
    @ApiModelProperty(value = "验证码")
    @TableField(exist = false)
    private String smsCode;
    @ApiModelProperty(value = "充值金额")
    @TableField(exist = false)
    private BigDecimal pay;
    /**手机号*/
    @Excel(name = "新手机号", width = 15)
    @ApiModelProperty(value = "新手机号")
    @TableField(exist = false)
    private java.lang.String newPhone;
    /**卡信息*/
    @ApiModelProperty(value = "IC卡Code")
    @TableField(exist = false)
    private String cardCode;
    /**卡No号*/
    @ApiModelProperty(value = "卡No号")
    @TableField(exist = false)
    private java.lang.String cardNumber;


    @ApiModelProperty(value = "方法类型")
    @TableField(exist = false)
    private String methodType;
}
